Using MELT to improve or explore your GCC-compiled source code
نویسنده
چکیده
This paper introduces the MELT framework and domain-specific language to extend the GCC compiler. It explains the major internal representations (Gimple, Tree-s, . . . ) and the overall organization of GCC. It shows the major features of MELT and illustrates why extending and customizing the GCC compiler using MELT is useful (for instance, to use GPGPUs thru OPENCL). It gives some concrete advices and guidelines for development of such extensions with MELT.
منابع مشابه
MELT - a Translated Domain Specific Language Embedded in the GCC Compiler
The GCC free compiler is a very large software, compiling source in several languages for many targets on various systems. It can be extended by plugins, which may take advantage of its power to provide extra specific functionality (warnings, optimizations, source refactoring or navigation) by processing various GCC internal representations (Gimple, Tree, ...). Writing plugins in C is a complex...
متن کاملEmbedded in the GCC Compiler
The GCC free compiler is a very large software, compiling source in several languages for many targets on various systems. It can be extended by plugins, which may take advantage of its power to provide extra specific functionality (warnings, optimizations, source refactoring or navigation) by processing various GCC internal representations (Gimple, Tree, ...). Writing plugins in C is a complex...
متن کاملFully Countering Trusting Trust through Diverse Double-Compiling
FULLY COUNTERING TRUSTING TRUST THROUGH DIVERSE DOUBLE-COMPILING David A. Wheeler, PhD George Mason University, 2009 Dissertation Directors: Dr. Daniel A. Menascé and Dr. Ravi Sandhu An Air Force evaluation of Multics, and Ken Thompson’s Turing award lecture (“Reflections on Trusting Trust”), showed that compilers can be subverted to insert malicious Trojan horses into critical software, includ...
متن کاملRepresenting Build-Time Software Architecture Views with UML
We have found that some classes of software systems exhibit interesting and complex build-time properties that are not explicitly address by existing models of software architecture. In this paper, we briefly explain the idea of Build-Time Architectural Views, and demonstrate how to model them with extended UML notations. 1. Architecture Views Kruchten proposed the "4+1" view model to include L...
متن کاملDwarf Frankenstein is still in your memory: tiny code reuse attacks
Code reuse attacks such as return oriented programming and jump oriented programming are the most popular exploitation methods among attackers. A large number of practical and non-practical defenses are proposed that differ in their overhead, the source code requirement, detection rate and implementation dependencies. However, a usual aspect among these methods is consideration of the common be...
متن کامل